package com.examination.api.administrator;

import com.examination.framework.model.response.QueryResponseResult;
import com.examination.framework.model.response.ResponseResult;
import com.examination.system.administration.AreaType;
import com.examination.system.administration.response.AddAdministrationResult;
import com.examination.system.administration.response.DeleteAdministrationResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;

import java.util.List;

/**
 * @author 寇淇芮
 * @Date 2019/8/27 14:09
 */
@Api(value = "地区类型管理",description = "地区类型管理的增删改查功能")
public interface AreaTypeControllerApi {

    @ApiOperation("添加地区类型信息")
    @ApiImplicitParam(name = "areaType",value = "添加对象",required = true,paramType = "body",dataType = "AreaType")
    AddAdministrationResult addAreaType(AreaType areaType);

    @ApiOperation("分页查询")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "pages",value = "页码",dataType = "String" ,required = true,paramType = "path"),
            @ApiImplicitParam(name = "size",value = "显示的条数",paramType = "path",dataType = "String",required = true)
    })
    QueryResponseResult findAreaType(Integer pages, Integer size);

    @ApiOperation("删除查询")
    @ApiImplicitParams({
            @ApiImplicitParam(name="id",value = "删除的id信息",dataType = "String",paramType = "path",required = true),
            @ApiImplicitParam(name = "areaType",value = "删除的详细信息",paramType = "body",required = false,dataType = "AreaType")
    })
    DeleteAdministrationResult delectAreaType(String id,AreaType areaType);

    @ApiOperation("修改信息")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id",value = "修改的数据id",dataType = "String",required = true,paramType = "path"),
            @ApiImplicitParam(name = "areaType",value = "修改的数据源",paramType = "body",required = true,dataType = "AreaType")
    })
    ResponseResult editAreaType(String id,AreaType areaType);
}
